package com.clstu.homeworks;

import java.util.Comparator;
import java.util.TreeSet;

public class HomeWork05 {
    public static void main(String[] args) {
        TreeSet treeSet=new TreeSet(new Comparator() {//或者在创建的时候直接提供比较器也不会报错
            @Override
            public int compare(Object o1, Object o2) {
                return 0;
            }
        });
        //第一次添加元素一定能够填上，不论比较器的比较结果是什么，因为第一次只是调用了比较的方法，并没有利用他的结果
        treeSet.add(new Person1());//ClassCastException
                     //应Person没有实现comparable接口，所以会报错
                   //因为底层运行的时候会直接向上转型变为Comparable对象，调用它的compareTo方法，如果没有实现接口就会报错。
    }
}
class Person implements Comparable{//实现了comparable接口之后就不会保错
    @Override
    public int compareTo(Object o) {
        return 0;
    }
}
class Person1{}